package com.lant.pojo;

import java.util.ArrayList;
import java.util.List;

/**
 * @ClassName: LantUserExample
 * @Description: 用户表Example
 * @author YFL
 * @date 2020年4月12日
 */
public class LantUserExample {
	protected String orderByClause;
	protected boolean distinct;
	protected List<Criteria> oredCriteria;

	private Integer limit;

	private Integer offset;

	public LantUserExample() {
		oredCriteria = new ArrayList<Criteria>();
	}

	public void setOrderByClause(String orderByClause) {
		this.orderByClause = orderByClause;
	}

	public String getOrderByClause() {
		return orderByClause;
	}

	public void setDistinct(boolean distinct) {
		this.distinct = distinct;
	}

	public boolean isDistinct() {
		return distinct;
	}

	public List<Criteria> getOredCriteria() {
		return oredCriteria;
	}

	public void or(Criteria criteria) {
		oredCriteria.add(criteria);
	}

	public Criteria or() {
		Criteria criteria = createCriteriaInternal();
		oredCriteria.add(criteria);
		return criteria;
	}

	public Criteria createCriteria() {
		Criteria criteria = createCriteriaInternal();
		if (oredCriteria.size() == 0) {
			oredCriteria.add(criteria);
		}
		return criteria;
	}

	protected Criteria createCriteriaInternal() {
		Criteria criteria = new Criteria(this);
		return criteria;
	}

	public void clear() {
		oredCriteria.clear();
		orderByClause = null;
		distinct = false;
	}

	public void setLimit(Integer limit) {
		this.limit = limit;
	}

	public Integer getLimit() {
		return limit;
	}

	public void setOffset(Integer offset) {
		this.offset = offset;
	}

	public Integer getOffset() {
		return offset;
	}

	public void setPageInfo(Integer currentPage, Integer pageSize) {
		if (pageSize < 1)
			throw new IllegalArgumentException("页大小不能小于1！");
		this.limit = pageSize;
		if (currentPage < 1)
			throw new IllegalArgumentException("页数不能小于1！");
		this.offset = (currentPage - 1) * pageSize;
	}

	public LantUserExample orderBy(String orderByClause) {
		this.setOrderByClause(orderByClause);
		return this;
	}

	public LantUserExample orderBy(String... orderByClauses) {
		StringBuffer sb = new StringBuffer();
		for (int i = 0; i < orderByClauses.length; i++) {
			sb.append(orderByClauses[i]);
			if (i < orderByClauses.length - 1) {
				sb.append(" , ");
			}
		}
		this.setOrderByClause(sb.toString());
		return this;
	}

	protected abstract static class GeneratedCriteria {
		protected List<Criterion> criteria;

		protected GeneratedCriteria() {
			super();
			criteria = new ArrayList<Criterion>();
		}

		public boolean isValid() {
			return criteria.size() > 0;
		}

		public List<Criterion> getAllCriteria() {
			return criteria;
		}

		public List<Criterion> getCriteria() {
			return criteria;
		}

		protected void addCriterion(String condition) {
			if (condition == null) {
				throw new RuntimeException("Value for condition cannot be null");
			}
			criteria.add(new Criterion(condition));
		}

		protected void addCriterion(String condition, Object value, String property) {
			if (value == null) {
				throw new RuntimeException("Value for " + property + " cannot be null");
			}
			criteria.add(new Criterion(condition, value));
		}

		protected void addCriterion(String condition, Object value1, Object value2, String property) {
			if (value1 == null || value2 == null) {
				throw new RuntimeException("Between values for " + property + " cannot be null");
			}
			criteria.add(new Criterion(condition, value1, value2));
		}

		public Criteria andIdIsNull() {
			addCriterion("id is null");
			return (Criteria) this;
		}

		public Criteria andIdIsNotNull() {
			addCriterion("id is not null");
			return (Criteria) this;
		}

		public Criteria andIdEqualTo(Long value) {
			addCriterion("id =", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdNotEqualTo(Long value) {
			addCriterion("id <>", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdGreaterThan(Long value) {
			addCriterion("id >", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdGreaterThanOrEqualTo(Long value) {
			addCriterion("id >=", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdLessThan(Long value) {
			addCriterion("id <", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdLessThanOrEqualTo(Long value) {
			addCriterion("id <=", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdIn(List<Long> values) {
			addCriterion("id in", values, "id");
			return (Criteria) this;
		}

		public Criteria andIdNotIn(List<Long> values) {
			addCriterion("id not in", values, "id");
			return (Criteria) this;
		}

		public Criteria andIdBetween(Long value1, Long value2) {
			addCriterion("id between", value1, value2, "id");
			return (Criteria) this;
		}

		public Criteria andIdNotBetween(Long value1, Long value2) {
			addCriterion("id not between", value1, value2, "id");
			return (Criteria) this;
		}

		public Criteria andNameIsNull() {
			addCriterion("name is null");
			return (Criteria) this;
		}

		public Criteria andNameIsNotNull() {
			addCriterion("name is not null");
			return (Criteria) this;
		}

		public Criteria andNameEqualTo(String value) {
			addCriterion("name =", value, "name");
			return (Criteria) this;
		}

		public Criteria andNameNotEqualTo(String value) {
			addCriterion("name <>", value, "name");
			return (Criteria) this;
		}

		public Criteria andNameGreaterThan(String value) {
			addCriterion("name >", value, "name");
			return (Criteria) this;
		}

		public Criteria andNameGreaterThanOrEqualTo(String value) {
			addCriterion("name >=", value, "name");
			return (Criteria) this;
		}

		public Criteria andNameLessThan(String value) {
			addCriterion("name <", value, "name");
			return (Criteria) this;
		}

		public Criteria andNameLessThanOrEqualTo(String value) {
			addCriterion("name <=", value, "name");
			return (Criteria) this;
		}

		public Criteria andNameLike(String value) {
			addCriterion("name like", value, "name");
			return (Criteria) this;
		}

		public Criteria andNameNotLike(String value) {
			addCriterion("name not like", value, "name");
			return (Criteria) this;
		}

		public Criteria andNameIn(List<String> values) {
			addCriterion("name in", values, "name");
			return (Criteria) this;
		}

		public Criteria andNameNotIn(List<String> values) {
			addCriterion("name not in", values, "name");
			return (Criteria) this;
		}

		public Criteria andNameBetween(String value1, String value2) {
			addCriterion("name between", value1, value2, "name");
			return (Criteria) this;
		}

		public Criteria andNameNotBetween(String value1, String value2) {
			addCriterion("name not between", value1, value2, "name");
			return (Criteria) this;
		}

		public Criteria andUserNameIsNull() {
			addCriterion("user_name is null");
			return (Criteria) this;
		}

		public Criteria andUserNameIsNotNull() {
			addCriterion("user_name is not null");
			return (Criteria) this;
		}

		public Criteria andUserNameEqualTo(String value) {
			addCriterion("user_name =", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameNotEqualTo(String value) {
			addCriterion("user_name <>", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameGreaterThan(String value) {
			addCriterion("user_name >", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameGreaterThanOrEqualTo(String value) {
			addCriterion("user_name >=", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameLessThan(String value) {
			addCriterion("user_name <", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameLessThanOrEqualTo(String value) {
			addCriterion("user_name <=", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameLike(String value) {
			addCriterion("user_name like", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameNotLike(String value) {
			addCriterion("user_name not like", value, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameIn(List<String> values) {
			addCriterion("user_name in", values, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameNotIn(List<String> values) {
			addCriterion("user_name not in", values, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameBetween(String value1, String value2) {
			addCriterion("user_name between", value1, value2, "userName");
			return (Criteria) this;
		}

		public Criteria andUserNameNotBetween(String value1, String value2) {
			addCriterion("user_name not between", value1, value2, "userName");
			return (Criteria) this;
		}

		public Criteria andPasswordIsNull() {
			addCriterion("password is null");
			return (Criteria) this;
		}

		public Criteria andPasswordIsNotNull() {
			addCriterion("password is not null");
			return (Criteria) this;
		}

		public Criteria andPasswordEqualTo(String value) {
			addCriterion("password =", value, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordNotEqualTo(String value) {
			addCriterion("password <>", value, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordGreaterThan(String value) {
			addCriterion("password >", value, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordGreaterThanOrEqualTo(String value) {
			addCriterion("password >=", value, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordLessThan(String value) {
			addCriterion("password <", value, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordLessThanOrEqualTo(String value) {
			addCriterion("password <=", value, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordLike(String value) {
			addCriterion("password like", value, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordNotLike(String value) {
			addCriterion("password not like", value, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordIn(List<String> values) {
			addCriterion("password in", values, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordNotIn(List<String> values) {
			addCriterion("password not in", values, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordBetween(String value1, String value2) {
			addCriterion("password between", value1, value2, "password");
			return (Criteria) this;
		}

		public Criteria andPasswordNotBetween(String value1, String value2) {
			addCriterion("password not between", value1, value2, "password");
			return (Criteria) this;
		}

		public Criteria andMobileIsNull() {
			addCriterion("mobile is null");
			return (Criteria) this;
		}

		public Criteria andMobileIsNotNull() {
			addCriterion("mobile is not null");
			return (Criteria) this;
		}

		public Criteria andMobileEqualTo(String value) {
			addCriterion("mobile =", value, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileNotEqualTo(String value) {
			addCriterion("mobile <>", value, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileGreaterThan(String value) {
			addCriterion("mobile >", value, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileGreaterThanOrEqualTo(String value) {
			addCriterion("mobile >=", value, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileLessThan(String value) {
			addCriterion("mobile <", value, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileLessThanOrEqualTo(String value) {
			addCriterion("mobile <=", value, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileLike(String value) {
			addCriterion("mobile like", value, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileNotLike(String value) {
			addCriterion("mobile not like", value, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileIn(List<String> values) {
			addCriterion("mobile in", values, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileNotIn(List<String> values) {
			addCriterion("mobile not in", values, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileBetween(String value1, String value2) {
			addCriterion("mobile between", value1, value2, "mobile");
			return (Criteria) this;
		}

		public Criteria andMobileNotBetween(String value1, String value2) {
			addCriterion("mobile not between", value1, value2, "mobile");
			return (Criteria) this;
		}

		public Criteria andEmailIsNull() {
			addCriterion("email is null");
			return (Criteria) this;
		}

		public Criteria andEmailIsNotNull() {
			addCriterion("email is not null");
			return (Criteria) this;
		}

		public Criteria andEmailEqualTo(String value) {
			addCriterion("email =", value, "email");
			return (Criteria) this;
		}

		public Criteria andEmailNotEqualTo(String value) {
			addCriterion("email <>", value, "email");
			return (Criteria) this;
		}

		public Criteria andEmailGreaterThan(String value) {
			addCriterion("email >", value, "email");
			return (Criteria) this;
		}

		public Criteria andEmailGreaterThanOrEqualTo(String value) {
			addCriterion("email >=", value, "email");
			return (Criteria) this;
		}

		public Criteria andEmailLessThan(String value) {
			addCriterion("email <", value, "email");
			return (Criteria) this;
		}

		public Criteria andEmailLessThanOrEqualTo(String value) {
			addCriterion("email <=", value, "email");
			return (Criteria) this;
		}

		public Criteria andEmailLike(String value) {
			addCriterion("email like", value, "email");
			return (Criteria) this;
		}

		public Criteria andEmailNotLike(String value) {
			addCriterion("email not like", value, "email");
			return (Criteria) this;
		}

		public Criteria andEmailIn(List<String> values) {
			addCriterion("email in", values, "email");
			return (Criteria) this;
		}

		public Criteria andEmailNotIn(List<String> values) {
			addCriterion("email not in", values, "email");
			return (Criteria) this;
		}

		public Criteria andEmailBetween(String value1, String value2) {
			addCriterion("email between", value1, value2, "email");
			return (Criteria) this;
		}

		public Criteria andEmailNotBetween(String value1, String value2) {
			addCriterion("email not between", value1, value2, "email");
			return (Criteria) this;
		}

		public Criteria andNoteIsNull() {
			addCriterion("note is null");
			return (Criteria) this;
		}

		public Criteria andNoteIsNotNull() {
			addCriterion("note is not null");
			return (Criteria) this;
		}

		public Criteria andNoteEqualTo(String value) {
			addCriterion("note =", value, "note");
			return (Criteria) this;
		}

		public Criteria andNoteNotEqualTo(String value) {
			addCriterion("note <>", value, "note");
			return (Criteria) this;
		}

		public Criteria andNoteGreaterThan(String value) {
			addCriterion("note >", value, "note");
			return (Criteria) this;
		}

		public Criteria andNoteGreaterThanOrEqualTo(String value) {
			addCriterion("note >=", value, "note");
			return (Criteria) this;
		}

		public Criteria andNoteLessThan(String value) {
			addCriterion("note <", value, "note");
			return (Criteria) this;
		}

		public Criteria andNoteLessThanOrEqualTo(String value) {
			addCriterion("note <=", value, "note");
			return (Criteria) this;
		}

		public Criteria andNoteLike(String value) {
			addCriterion("note like", value, "note");
			return (Criteria) this;
		}

		public Criteria andNoteNotLike(String value) {
			addCriterion("note not like", value, "note");
			return (Criteria) this;
		}

		public Criteria andNoteIn(List<String> values) {
			addCriterion("note in", values, "note");
			return (Criteria) this;
		}

		public Criteria andNoteNotIn(List<String> values) {
			addCriterion("note not in", values, "note");
			return (Criteria) this;
		}

		public Criteria andNoteBetween(String value1, String value2) {
			addCriterion("note between", value1, value2, "note");
			return (Criteria) this;
		}

		public Criteria andNoteNotBetween(String value1, String value2) {
			addCriterion("note not between", value1, value2, "note");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlIsNull() {
			addCriterion("photo_url is null");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlIsNotNull() {
			addCriterion("photo_url is not null");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlEqualTo(String value) {
			addCriterion("photo_url =", value, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlNotEqualTo(String value) {
			addCriterion("photo_url <>", value, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlGreaterThan(String value) {
			addCriterion("photo_url >", value, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlGreaterThanOrEqualTo(String value) {
			addCriterion("photo_url >=", value, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlLessThan(String value) {
			addCriterion("photo_url <", value, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlLessThanOrEqualTo(String value) {
			addCriterion("photo_url <=", value, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlLike(String value) {
			addCriterion("photo_url like", value, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlNotLike(String value) {
			addCriterion("photo_url not like", value, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlIn(List<String> values) {
			addCriterion("photo_url in", values, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlNotIn(List<String> values) {
			addCriterion("photo_url not in", values, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlBetween(String value1, String value2) {
			addCriterion("photo_url between", value1, value2, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlNotBetween(String value1, String value2) {
			addCriterion("photo_url not between", value1, value2, "photoUrl");
			return (Criteria) this;
		}

		public Criteria andStatusIsNull() {
			addCriterion("status is null");
			return (Criteria) this;
		}

		public Criteria andStatusIsNotNull() {
			addCriterion("status is not null");
			return (Criteria) this;
		}

		public Criteria andStatusEqualTo(Integer value) {
			addCriterion("status =", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotEqualTo(Integer value) {
			addCriterion("status <>", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusGreaterThan(Integer value) {
			addCriterion("status >", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
			addCriterion("status >=", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLessThan(Integer value) {
			addCriterion("status <", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLessThanOrEqualTo(Integer value) {
			addCriterion("status <=", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusIn(List<Integer> values) {
			addCriterion("status in", values, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotIn(List<Integer> values) {
			addCriterion("status not in", values, "status");
			return (Criteria) this;
		}

		public Criteria andStatusBetween(Integer value1, Integer value2) {
			addCriterion("status between", value1, value2, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotBetween(Integer value1, Integer value2) {
			addCriterion("status not between", value1, value2, "status");
			return (Criteria) this;
		}

		public Criteria andMobileTokenIsNull() {
			addCriterion("mobile_token is null");
			return (Criteria) this;
		}

		public Criteria andMobileTokenIsNotNull() {
			addCriterion("mobile_token is not null");
			return (Criteria) this;
		}

		public Criteria andMobileTokenEqualTo(String value) {
			addCriterion("mobile_token =", value, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenNotEqualTo(String value) {
			addCriterion("mobile_token <>", value, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenGreaterThan(String value) {
			addCriterion("mobile_token >", value, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenGreaterThanOrEqualTo(String value) {
			addCriterion("mobile_token >=", value, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenLessThan(String value) {
			addCriterion("mobile_token <", value, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenLessThanOrEqualTo(String value) {
			addCriterion("mobile_token <=", value, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenLike(String value) {
			addCriterion("mobile_token like", value, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenNotLike(String value) {
			addCriterion("mobile_token not like", value, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenIn(List<String> values) {
			addCriterion("mobile_token in", values, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenNotIn(List<String> values) {
			addCriterion("mobile_token not in", values, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenBetween(String value1, String value2) {
			addCriterion("mobile_token between", value1, value2, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileTokenNotBetween(String value1, String value2) {
			addCriterion("mobile_token not between", value1, value2, "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileImeiIsNull() {
			addCriterion("mobile_imei is null");
			return (Criteria) this;
		}

		public Criteria andMobileImeiIsNotNull() {
			addCriterion("mobile_imei is not null");
			return (Criteria) this;
		}

		public Criteria andMobileImeiEqualTo(String value) {
			addCriterion("mobile_imei =", value, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiNotEqualTo(String value) {
			addCriterion("mobile_imei <>", value, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiGreaterThan(String value) {
			addCriterion("mobile_imei >", value, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiGreaterThanOrEqualTo(String value) {
			addCriterion("mobile_imei >=", value, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiLessThan(String value) {
			addCriterion("mobile_imei <", value, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiLessThanOrEqualTo(String value) {
			addCriterion("mobile_imei <=", value, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiLike(String value) {
			addCriterion("mobile_imei like", value, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiNotLike(String value) {
			addCriterion("mobile_imei not like", value, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiIn(List<String> values) {
			addCriterion("mobile_imei in", values, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiNotIn(List<String> values) {
			addCriterion("mobile_imei not in", values, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiBetween(String value1, String value2) {
			addCriterion("mobile_imei between", value1, value2, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andMobileImeiNotBetween(String value1, String value2) {
			addCriterion("mobile_imei not between", value1, value2, "mobileImei");
			return (Criteria) this;
		}

		public Criteria andCreateTimeIsNull() {
			addCriterion("create_time is null");
			return (Criteria) this;
		}

		public Criteria andCreateTimeIsNotNull() {
			addCriterion("create_time is not null");
			return (Criteria) this;
		}

		public Criteria andCreateTimeEqualTo(Long value) {
			addCriterion("create_time =", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeNotEqualTo(Long value) {
			addCriterion("create_time <>", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeGreaterThan(Long value) {
			addCriterion("create_time >", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeGreaterThanOrEqualTo(Long value) {
			addCriterion("create_time >=", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeLessThan(Long value) {
			addCriterion("create_time <", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeLessThanOrEqualTo(Long value) {
			addCriterion("create_time <=", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeIn(List<Long> values) {
			addCriterion("create_time in", values, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeNotIn(List<Long> values) {
			addCriterion("create_time not in", values, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeBetween(Long value1, Long value2) {
			addCriterion("create_time between", value1, value2, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeNotBetween(Long value1, Long value2) {
			addCriterion("create_time not between", value1, value2, "createTime");
			return (Criteria) this;
		}

		public Criteria andLastAccessIsNull() {
			addCriterion("last_access is null");
			return (Criteria) this;
		}

		public Criteria andLastAccessIsNotNull() {
			addCriterion("last_access is not null");
			return (Criteria) this;
		}

		public Criteria andLastAccessEqualTo(Long value) {
			addCriterion("last_access =", value, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andLastAccessNotEqualTo(Long value) {
			addCriterion("last_access <>", value, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andLastAccessGreaterThan(Long value) {
			addCriterion("last_access >", value, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andLastAccessGreaterThanOrEqualTo(Long value) {
			addCriterion("last_access >=", value, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andLastAccessLessThan(Long value) {
			addCriterion("last_access <", value, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andLastAccessLessThanOrEqualTo(Long value) {
			addCriterion("last_access <=", value, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andLastAccessIn(List<Long> values) {
			addCriterion("last_access in", values, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andLastAccessNotIn(List<Long> values) {
			addCriterion("last_access not in", values, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andLastAccessBetween(Long value1, Long value2) {
			addCriterion("last_access between", value1, value2, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andLastAccessNotBetween(Long value1, Long value2) {
			addCriterion("last_access not between", value1, value2, "lastAccess");
			return (Criteria) this;
		}

		public Criteria andNameLikeInsensitive(String value) {
			addCriterion("upper(name) like", value.toUpperCase(), "name");
			return (Criteria) this;
		}

		public Criteria andUserNameLikeInsensitive(String value) {
			addCriterion("upper(user_name) like", value.toUpperCase(), "userName");
			return (Criteria) this;
		}

		public Criteria andPasswordLikeInsensitive(String value) {
			addCriterion("upper(password) like", value.toUpperCase(), "password");
			return (Criteria) this;
		}

		public Criteria andMobileLikeInsensitive(String value) {
			addCriterion("upper(mobile) like", value.toUpperCase(), "mobile");
			return (Criteria) this;
		}

		public Criteria andEmailLikeInsensitive(String value) {
			addCriterion("upper(email) like", value.toUpperCase(), "email");
			return (Criteria) this;
		}

		public Criteria andNoteLikeInsensitive(String value) {
			addCriterion("upper(note) like", value.toUpperCase(), "note");
			return (Criteria) this;
		}

		public Criteria andPhotoUrlLikeInsensitive(String value) {
			addCriterion("upper(photo_url) like", value.toUpperCase(), "photoUrl");
			return (Criteria) this;
		}

		public Criteria andMobileTokenLikeInsensitive(String value) {
			addCriterion("upper(mobile_token) like", value.toUpperCase(), "mobileToken");
			return (Criteria) this;
		}

		public Criteria andMobileImeiLikeInsensitive(String value) {
			addCriterion("upper(mobile_imei) like", value.toUpperCase(), "mobileImei");
			return (Criteria) this;
		}
	}

	public static class Criteria extends GeneratedCriteria {

		private LantUserExample example;

		protected Criteria(LantUserExample example) {
			super();
			this.example = example;
		}

		public LantUserExample example() {
			return this.example;
		}

		public Criteria andIf(boolean ifAdd, ICriteriaAdd add) {
			if (ifAdd) {
				add.add(this);
			}
			return this;
		}

		public interface ICriteriaAdd {

			Criteria add(Criteria add);
		}
	}

	public static class Criterion {
		private String condition;

		private Object value;

		private Object secondValue;

		private boolean noValue;

		private boolean singleValue;

		private boolean betweenValue;

		private boolean listValue;

		private String typeHandler;

		public String getCondition() {
			return condition;
		}

		public Object getValue() {
			return value;
		}

		public Object getSecondValue() {
			return secondValue;
		}

		public boolean isNoValue() {
			return noValue;
		}

		public boolean isSingleValue() {
			return singleValue;
		}

		public boolean isBetweenValue() {
			return betweenValue;
		}

		public boolean isListValue() {
			return listValue;
		}

		public String getTypeHandler() {
			return typeHandler;
		}

		protected Criterion(String condition) {
			super();
			this.condition = condition;
			this.typeHandler = null;
			this.noValue = true;
		}

		protected Criterion(String condition, Object value, String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.typeHandler = typeHandler;
			if (value instanceof List<?>) {
				this.listValue = true;
			} else {
				this.singleValue = true;
			}
		}

		protected Criterion(String condition, Object value) {
			this(condition, value, null);
		}

		protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.secondValue = secondValue;
			this.typeHandler = typeHandler;
			this.betweenValue = true;
		}

		protected Criterion(String condition, Object value, Object secondValue) {
			this(condition, value, secondValue, null);
		}
	}
}